mmmmeeeemmmmvvvviiiissss is only shipped with PCP for IRIX 5.3. Later IRIX versions
include ggggmmmmeeeemmmmuuuussssaaaaggggeeee(1) which provides all of the features of mmmmeeeemmmmvvvviiiissss, and
more.
DDDDEEEESSSSCCCCRRRRIIIIPPPPTTTTIIIIOOOONNNN
mmmmeeeemmmmvvvviiiissss is a graphical memory usage viewer. mmmmeeeemmmmvvvviiiissss displays a bar chart
depicting the breakdown of memory use, with each bar labeled with the
name of the program using the memory and the number of Kilobytes of
memory used. If more than one copy of a program is running, the number
of copies is displayed in parentheses after the program name.
In addition, mmmmeeeemmmmvvvviiiissss will display a breakdown of the regions within a
program. Clicking on a bar or program name in the main chart will
replace the main chart with a chart for that program, with each region
labeled with one of TTTTeeeexxxxtttt, DDDDaaaattttaaaa, BBBBrrrreeeeaaaakkkk, SSSSttttaaaacccckkkk, SSSShhhhmmmmeeeemmmm, PPPPhhhhyyyyssssiiiiccccaaaallll DDDDeeeevvvviiiicccceeee, RRRRWWWW,
RRRROOOO, and (if possible) the base name of the file or device corresponding
to each region. If memvis is unable to determine the base name of the
file or device for a region that does correspond to a file or device,
memvis will display the inode number of the file or device.
The meanings of these labels are as follows:
TTTTeeeexxxxtttt This region contains executable instructions. These
instructions most likely came from an executable program file
or a dynamic shared object.
DDDDaaaattttaaaa This region contains program data. Regions marked DDDDaaaattttaaaa are
usually associated with a particular executable program file or
a dynamic shared object.
BBBBrrrreeeeaaaakkkk Data region that is grown with bbbbrrrrkkkk(2). This is the region that
contains memory allocated by mmmmaaaalllllllloooocccc(3C).
SSSSttttaaaacccckkkk Runtime stack. This is region is used for procecure call
frames, and can grow if the program makes deeply nested
procedure calls or calls procedures that allocate large amounts
of stack space for temporary variables.
SSSShhhhmmmmeeeemmmm A System V shared memory region.
Region corresponds to a physical device other than main memory,
such as a graphics device.
RRRRWWWW Read/Write data without the Copy on Write bit set. This did
not come from an executable program file or a dynamic shared
object, and could be a memory mapped file.
RRRROOOO Read only data.
UUUU aaaarrrreeeeaaaa &&&& PPPPTTTTEEEEssss
The user area and page table entries. This is information that
the kernel uses to administer a process.
Clicking on the IIIIrrrriiiixxxx bar in PPPPhhhhyyyyssssiiiiccccaaaallll MMMMeeeemmmmoooorrrryyyy BBBBrrrreeeeaaaakkkkddddoooowwwwnnnn mode (see below)
causes mmmmeeeemmmmvvvviiiissss to display a breakdown of the memory that it is charging to
the operating system. Separate items include FFFFSSSS CCCCaaaacccchhhheeee, BBBBuuuuffffffffeeeerrrr DDDDaaaattttaaaa,
By default, mmmmeeeemmmmvvvviiiissss only displays programs that are using more than 500
Kilobytes of memory; programs using less than this are lumped together
and labeled <<<< 555500000000. This threshhold is specifiable on the command line
and changeable at run time.
Alternatively, a list of programs to monitor can be specified on the
command line (see below). In this case, a bar for each of the programs
specified appears (as long as that program is running) and any threshhold
is ignored.
In addition to the four basic viewing modes and the process region
breakdown, mmmmeeeemmmmvvvviiiissss cycles through displays of additional information when
the 'v' key is pressed. This additional information is a subdivision of
each bar in the chart, with the right portion of each bar corresponding
to the additional information. Down the right side of the window the
values corresponding to the right portion of each bar are displayed.
The following additional information is available:
PPPPrrrriiiivvvvaaaatttteeee The portion of each bar that is private memory; that is, memory
which is not being shared. This additional information is
available in all modes, except when viewing the Irix breakdown.
SSSShhhhaaaarrrreeeedddd The portion of each bar that is shared between more than one
process. This is calculated by subtracting the PPPPrrrriiiivvvvaaaatttteeee amount
from the PPPPhhhhyyyyssssiiiiccccaaaallll amount for each bar. SSSShhhhaaaarrrreeeedddd is available in
all modes, except when viewing the Irix breakdown.
PPPPhhhhyyyyssssiiiiccccaaaallll The portion of each bar that is consuming physical memory.
PPPPhhhhyyyyssssiiiiccccaaaallll is available in RRRReeeessssiiiiddddeeeennnntttt SSSSiiiizzzzeeeessss ooooffff PPPPrrrroooocccceeeesssssssseeeessss and TTTToooottttaaaallll
The 'h' key brings up an on-line help screen, and the space bar returns
from there to viewing memory. The escape key exits.
EEEEXXXXAAAAMMMMPPPPLLLLEEEESSSS
$ memvis -p -t 1000 -d 100
Bring up mmmmeeeemmmmvvvviiiissss in PPPPhhhhyyyyssssiiiiccccaaaallll MMMMeeeemmmmoooorrrryyyy BBBBrrrreeeeaaaakkkkddddoooowwwwnnnn mode, with programs using
1000 Kilobytes or more of memory displayed separately in their own bars.
The up and down arrow keys will increase and decrease the threshhold by
100 Kilobytes respectively.
$ memvis -r xwsh toolchest 4Dwm Xsgi fm
Bring up mmmmeeeemmmmvvvviiiissss in RRRReeeessssiiiiddddeeeennnntttt SSSSiiiizzzzeeeessss ooooffff PPPPrrrroooocccceeeesssssssseeeessss mode. Display bars for
xxxxwwwwsssshhhh(1), ttttoooooooollllcccchhhheeeesssstttt(1), 4444DDDDwwwwmmmm(1), XXXXssssggggiiii(1), and ffffmmmm(1). All other programs
will be combined into a bar labeled OOOOtttthhhheeeerrrr.
FFFFIIIILLLLEEEESSSS
$HOME/.memvis.inodes Table of files that are likely to correspond to
regions mapped into processes, along with inode
numbers. mmmmeeeemmmmvvvviiiissss builds this table if it doesn't
exist or if it is older than /_u_n_i_x or if the ----uuuu
option is supplied, and uses it to label the bars
when viewing memory breakdown within a process.
See EEEENNNNVVVVIIIIRRRROOOONNNNMMMMEEEENNNNTTTT VVVVAAAARRRRIIIIAAAABBBBLLLLEEEESSSS below for information
on altering how $_H_O_M_E/._m_e_m_v_i_s._i_n_o_d_e_s is built.
/proc mmmmeeeemmmmvvvviiiissss gets memory usage information for